home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CreatingGames / Utilities / C / ASAP / process.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-09-09  |  2.0 KB  |  51 lines

  1. /*****************************************************************************
  2.  *                                                                           *
  3.  * ASAP - Amiga Software Authoring Platform                                  *
  4.  *                                                                           *
  5.  * Written by Laurie Perrin                                                  *
  6.  *                                                                           *
  7.  * AProcess wrapper class                                                  *
  8.  *                                                                           *
  9.  *****************************************************************************/
  10.  
  11. #ifndef ASAP_AProcedure_H
  12. #define ASAP_AProcedure_H
  13.  
  14. extern "C"
  15. {
  16.  #include <Proto/DOS.h>
  17. }
  18.  
  19. class AMsgPort;
  20.  
  21. class AProcess : public Process
  22. {
  23.  public:
  24.  inline static AProcess * CreateNewProc(TagItem * tags);
  25.  inline static AProcess * CreateNewProcTagList(TagItem * tags);
  26.  inline static AProcess * CreateNewProcTags(unsigned long tag1type,  ...);
  27.  inline static AMsgPort * CreateProc(STRPTR name, long pri, BPTR segList, long stackSize);
  28. };
  29. //----------------------------------------------------------------------------
  30. AProcess * AProcess::CreateNewProc (TagItem * tags)
  31. {
  32.  return (AProcess *) ::CreateNewProc(tags);
  33. }
  34. //----------------------------------------------------------------------------
  35. AProcess * AProcess::CreateNewProcTagList (TagItem * tags)
  36. {
  37.  return (AProcess *) ::CreateNewProcTagList(tags);
  38. }
  39. //----------------------------------------------------------------------------
  40. AProcess * AProcess::CreateNewProcTags (unsigned long tag1type,  ...)
  41. {
  42.  return (AProcess *) ::CreateNewProcTagList((TagItem *) &tag1type);
  43. }
  44. //----------------------------------------------------------------------------
  45. AMsgPort * AProcess::CreateProc (STRPTR name, long pri, BPTR segList, long stackSize)
  46. {
  47.  return (AMsgPort *) ::CreateProc(name, pri, segList, stackSize);
  48. }
  49.  
  50. #endif
  51.